Satellite positioning systems (e.g., GPS, Galileo, GLONASS) typically include a constellation of satellites in non-geosynchronous orbit (NGSO) above the surface of the earth. The satellites broadcast signals that can be detected and by satellite receivers on the surface of the earth. More specifically, the satellite orbits may be arranged such that a satellite receiver at any point on the earth's surface may have a direct line of sight to at least four satellites in the constellation, ignoring occlusions such as buildings or mountains. A satellite receiver may use the satellite signals received from four or more satellites to determine its location or position on the earth's surface (e.g., using trilateration techniques). For example, the satellite receiver may calculate its distance to each of the four satellites based on the propagation times of their respective satellite signals. Thus, the accuracy of the position determination may depend on the accuracy of the timing information for each of the satellite signals.
A number of factors may affect the timing of satellite signals. For example, various weather and/or atmospheric conditions may impede (e.g., delay) the propagation of satellite signals. Tall buildings and other obstructions may further interfere with signal propagation. These factors may be hard to estimate directly and thus affect the resulting positioning estimate often introducing meters to tens of meters of error. Thus, it may be desirable to compensate for timing errors in the satellite signals received by a satellite receiver to more accurately determine the location of the receiver.